//定义返回值可空的方法
String? getValue(value) {
  return "$value";
}

void printInfo(String? value) {
  print(value!.length);
}

void main() {
  //?可以定义可控类型
  String? str = "张三";
  str = null;
  print(str);

  print(getValue(123));
  print(getValue(null));

  //！非空断言 如果对象为空则抛出异常 不为空执行后面的语句
  String? str1 = "李四";
  print(str1.length);
  str1 = null;
  //！非空断言
  //print(str1!.length);

  printInfo("123");
  //printInfo(null);
}
